其他语言

推荐列表 站点导航

当前位置:首页 > 脚本编程 > 其他语言 >

快速掌握Lua5.3操作系统库

来源:网络整理  作者:  发布时间:2020-12-26 16:09
Q:与文件操作相关的库方法?A:--[[os remove(filename)删除文件名为 39;filename 39;的文件, 39;filename 39;可以是一个普通文...

A:

--[[ os.remove(filename) 删除文件名为'filename'的文件,'filename'可以是一个普通文件或是一个空的目录。 如果删除失败,则返回'nil'加上错误描述以及错误码。]] print(os.remove('existent-file')) --> true print(os.remove('non-existent-file')) --> nil non-existent-file: No such file or directory 2 print(os.remove('empty-directory')) --> true print(os.remove('non-empty-directory')) --> nil non-empty-directory: Directory not empty 39 --[[ os.rename(oldname, newname) 将文件'oldname'重命名为'newname'。 如果重命名失败,则返回'nil'加上错误描述以及错误码。]] print(os.rename('existent-file', 'file')) --> true print(os.rename('existent-file', 'file')) --> nil No such file or directory 2 --[[ os.tmpname() 返回一个可用于临时文件的文件名字符串,并创建该文件。 这个文件在使用前必须显式打开,不再使用时需要显式删除(即使你没有使用它)。 只要有可能,请使用'io.tmpfile()',因为该文件可以在程序结束时自动删除。]] print(os.tmpname()) --> /tmp/lua_9zFiDU Q:与时间操作相关的库方法?

A:

--[[ os.time([table]) 当不指定'table'时,返回当前时间距离某个特定时间的秒数。 在我的电脑上,这个特定的时间是'08:00:00 UTC, January 1, 1970'。 当指定'table'时,返回当前时间距离'table'指定的时间的秒数。 'table'中可包含如下域: year 任意数字表示某一年,必填。 month 01-12,必填。 day 01-31,必填。 hour 01-31,选填,默认为12。 min 00-59,选填,默认为0。 sec 00-59,选填,默认为0。 isdst 一个'bool'值,'true'为使用夏令时,'false'为不使用,默认'false',可选。 该方法的返回值最好不要直接使用,而是传递给'os.date()'格式化输出时间。]] print(os.time()) --> 1457270963 print(os.time{year=1970, month=1, day=1}) --> 14400 print(os.time{year=1970, month=1, day=1, hour=8}) --> 0 print(os.time{year=1970, month=1, day=1, hour=8, sec=1}) --> 1 --[[ os.date([format [, time]]) 以给定的'format'格式化指定的时间'time'。 'format'可以指定为如下值: %a 简写星期(例如,Sun)。 %A 非简写星期(例如,Sunday)。 %b 简写月份(例如,Mar)。 %B 非简写月份(例如,March)。 %c 星期,月份,日,时间,年份(例如,Sun Mar 6 22:50:56 2016)。 %d 日,'01-31'的格式(例如,06)。 %H 小时,24小时制,'00-23'的格式(例如,22)。 %I 小时,12小时制,'01-12'的格式(例如,10)。 %M 分钟,'00-59'的格式(例如,50)。 %m 月,'01-12'的格式(例如,03)。 %p 上午或下午,'AM'或'PM'。 %S 秒,'00-59'的格式(例如,56)。 %w 数字格式的星期,'0-6'的格式,'0'代表'Sunday',以此类推。 %x 日期,'MM/DD/YY'的格式(例如,03/06/16)。 %X 时间,'hh/mm/ss'的格式(例如,22:50:56)。 %Y 非简写年份(例如,2016)。 %y 简写年份,'00-99'的格式(例如,16)。 % 转义字符(例如可转义'%'本身)。 *t 返回有如下域的'table': year 年份 month 月份 day 日 hour 小时 min 分钟 sec 秒 wday 数字格式的星期,'1'是周日,之后以此类推 yday 数字格式的年份,'1'是一月,之后以此类推 isdst 是否使用夏令时 无 默认使用'%c'。 'time'是一个距离某个特定时间的秒数。由于不同机器所使用的特定的时间不同, 所以最好使用'os.time()'的返回值作为此参数的值。默认使用'os.time()'的返回值。]] print(os.date()) --> Sun Mar 6 23:33:31 2016 print(os.date('%A')) --> Sunday print(os.date('%c', 0)) --> Thu Jan 1 08:00:00 1970 for k, v in pairs(os.date('*t')) do print(k, v) end --[[ result: hour 23 isdst false year 2016 sec 8 wday 1 min 15 yday 66 day 6 month 3]] print(os.date('Today is %A, in %B.')) --> today is Sunday, in March. --[[ os.clock() 返回程序所使用的CPU时间的近似值(以秒为单位)。]] -- 典型的应用是计算程序耗时。 local x = os.clock() local s = 0 for i = 1, 100000 do s = s + i end print(string.format('elapsed time: %.2f', os.clock() - x)) --> elapsed time: 0.01 for i = 1, 100000000 do s = s + i end -- 增加循环的次数,使用的时间增长。 print(string.format('elapsed time: %.2f', os.clock() - x)) --> elapsed time: 2.38 --[[ os.difftime(t2, t1) 返回以秒为单位的't2'与't1'之间的时间差,返回值依旧是以秒为单位。]] t1 = os.time() t2 = os.time() print(t1, t2) --> 1457363213 1457363219 print(os.difftime(t2, t1)) --> 6.0 Q:与系统操作相关的库方法?

A:

--[[ os.execute([command]) 与C语言中的'execute()'功能相同,将'command'命令传递给shell执行。 如果执行成功,第一个参数返回'true',否则返回'nil'。 第二个和第三个参数分别返回一个字符串和一个数字, 如果第二个参数返回'exit',代表命令正常退出,第三个参数代表退出状态; 如果第二个参数返回'signal',代表命令被信号终端,第三个参数代表中断的信号。 当不提供'command'命令时,如果shell可用,则返回'true',否则返回'false'。 只有此时返回一个参数。]] print(os.execute()) --> true print(os.execute('mkdir')) --[[ result: mkdir: 缺少操作数 Try 'mkdir --help' for more information. nil exit 1]] print(os.execute('mkdir dir')) --> true exit 0 --[[ os.exit([code [, close]]) 调用C语言中的'exit()'终止程序的运行。 如果'code'为'true',则返回'EXIT_SUCCESS';如果为'false',则返回'EXIT_FAILURE'; 如果为一个数值,则返回该数值。默认为'true'。 如果'close'为'true',则在终止之前关闭'Lua state'。]] --[[ os.getenv(varname) 获取系统环境变量'varname'的值,如果该变量不存在,则返回'nil'。]] print(os.getenv('HOME')) --> /home/vermilliontear print(os.getenv('MYVAR')) --> nil > export MYVAR=9' -- 在shell中执行。 print(os.getenv('MYVAR')) --> 9 附加:

1、实际上%x,%X以及%c的最终显示格式依赖于操作系统。例如在某些系统上%x以”MM/DD/YY”的形式显示,而在另一些系统上是以”YY/MM/DD”的形式显示。
如果想明确的使用某种格式,最好指定明确的”format”,例如%m/%d/%Y。

相关热词:

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!

本文地址: https://v30.fanwenzhu.com/jiaob/qita/9369.shtml

相关文章
最新文章
然后我就删除了 然后我就删除了

时间:2021-01-13

Win8下用DOSBox编写汇编语言 Win8下用DOSBox编写汇编语言

时间:2020-12-28

利用sourcemap来调试sass 利用sourcemap来调试sass

时间:2020-12-28

django开发个人简易Blog数据 django开发个人简易Blog数据

时间:2020-12-26

 Ajax出现400报错的时候怎么 Ajax出现400报错的时候怎么

时间:2020-12-26

Dart是一个怎样的语言? Dart是一个怎样的语言?

时间:2020-12-26

Object.defineProperty让你巧妙 Object.defineProperty让你巧妙

时间:2020-12-26

Copyright © www.juheyunku.com      关于 | 合作 | 声明 | 联系 | 更新 | 地图 | Tags

快速掌握Lua5.3操作系统库

2020-12-26 编辑:

A:

--[[ os.remove(filename) 删除文件名为'filename'的文件,'filename'可以是一个普通文件或是一个空的目录。 如果删除失败,则返回'nil'加上错误描述以及错误码。]] print(os.remove('existent-file')) --> true print(os.remove('non-existent-file')) --> nil non-existent-file: No such file or directory 2 print(os.remove('empty-directory')) --> true print(os.remove('non-empty-directory')) --> nil non-empty-directory: Directory not empty 39 --[[ os.rename(oldname, newname) 将文件'oldname'重命名为'newname'。 如果重命名失败,则返回'nil'加上错误描述以及错误码。]] print(os.rename('existent-file', 'file')) --> true print(os.rename('existent-file', 'file')) --> nil No such file or directory 2 --[[ os.tmpname() 返回一个可用于临时文件的文件名字符串,并创建该文件。 这个文件在使用前必须显式打开,不再使用时需要显式删除(即使你没有使用它)。 只要有可能,请使用'io.tmpfile()',因为该文件可以在程序结束时自动删除。]] print(os.tmpname()) --> /tmp/lua_9zFiDU Q:与时间操作相关的库方法?

A:

--[[ os.time([table]) 当不指定'table'时,返回当前时间距离某个特定时间的秒数。 在我的电脑上,这个特定的时间是'08:00:00 UTC, January 1, 1970'。 当指定'table'时,返回当前时间距离'table'指定的时间的秒数。 'table'中可包含如下域: year 任意数字表示某一年,必填。 month 01-12,必填。 day 01-31,必填。 hour 01-31,选填,默认为12。 min 00-59,选填,默认为0。 sec 00-59,选填,默认为0。 isdst 一个'bool'值,'true'为使用夏令时,'false'为不使用,默认'false',可选。 该方法的返回值最好不要直接使用,而是传递给'os.date()'格式化输出时间。]] print(os.time()) --> 1457270963 print(os.time{year=1970, month=1, day=1}) --> 14400 print(os.time{year=1970, month=1, day=1, hour=8}) --> 0 print(os.time{year=1970, month=1, day=1, hour=8, sec=1}) --> 1 --[[ os.date([format [, time]]) 以给定的'format'格式化指定的时间'time'。 'format'可以指定为如下值: %a 简写星期(例如,Sun)。 %A 非简写星期(例如,Sunday)。 %b 简写月份(例如,Mar)。 %B 非简写月份(例如,March)。 %c 星期,月份,日,时间,年份(例如,Sun Mar 6 22:50:56 2016)。 %d 日,'01-31'的格式(例如,06)。 %H 小时,24小时制,'00-23'的格式(例如,22)。 %I 小时,12小时制,'01-12'的格式(例如,10)。 %M 分钟,'00-59'的格式(例如,50)。 %m 月,'01-12'的格式(例如,03)。 %p 上午或下午,'AM'或'PM'。 %S 秒,'00-59'的格式(例如,56)。 %w 数字格式的星期,'0-6'的格式,'0'代表'Sunday',以此类推。 %x 日期,'MM/DD/YY'的格式(例如,03/06/16)。 %X 时间,'hh/mm/ss'的格式(例如,22:50:56)。 %Y 非简写年份(例如,2016)。 %y 简写年份,'00-99'的格式(例如,16)。 % 转义字符(例如可转义'%'本身)。 *t 返回有如下域的'table': year 年份 month 月份 day 日 hour 小时 min 分钟 sec 秒 wday 数字格式的星期,'1'是周日,之后以此类推 yday 数字格式的年份,'1'是一月,之后以此类推 isdst 是否使用夏令时 无 默认使用'%c'。 'time'是一个距离某个特定时间的秒数。由于不同机器所使用的特定的时间不同, 所以最好使用'os.time()'的返回值作为此参数的值。默认使用'os.time()'的返回值。]] print(os.date()) --> Sun Mar 6 23:33:31 2016 print(os.date('%A')) --> Sunday print(os.date('%c', 0)) --> Thu Jan 1 08:00:00 1970 for k, v in pairs(os.date('*t')) do print(k, v) end --[[ result: hour 23 isdst false year 2016 sec 8 wday 1 min 15 yday 66 day 6 month 3]] print(os.date('Today is %A, in %B.')) --> today is Sunday, in March. --[[ os.clock() 返回程序所使用的CPU时间的近似值(以秒为单位)。]] -- 典型的应用是计算程序耗时。 local x = os.clock() local s = 0 for i = 1, 100000 do s = s + i end print(string.format('elapsed time: %.2f', os.clock() - x)) --> elapsed time: 0.01 for i = 1, 100000000 do s = s + i end -- 增加循环的次数,使用的时间增长。 print(string.format('elapsed time: %.2f', os.clock() - x)) --> elapsed time: 2.38 --[[ os.difftime(t2, t1) 返回以秒为单位的't2'与't1'之间的时间差,返回值依旧是以秒为单位。]] t1 = os.time() t2 = os.time() print(t1, t2) --> 1457363213 1457363219 print(os.difftime(t2, t1)) --> 6.0 Q:与系统操作相关的库方法?

A:

--[[ os.execute([command]) 与C语言中的'execute()'功能相同,将'command'命令传递给shell执行。 如果执行成功,第一个参数返回'true',否则返回'nil'。 第二个和第三个参数分别返回一个字符串和一个数字, 如果第二个参数返回'exit',代表命令正常退出,第三个参数代表退出状态; 如果第二个参数返回'signal',代表命令被信号终端,第三个参数代表中断的信号。 当不提供'command'命令时,如果shell可用,则返回'true',否则返回'false'。 只有此时返回一个参数。]] print(os.execute()) --> true print(os.execute('mkdir')) --[[ result: mkdir: 缺少操作数 Try 'mkdir --help' for more information. nil exit 1]] print(os.execute('mkdir dir')) --> true exit 0 --[[ os.exit([code [, close]]) 调用C语言中的'exit()'终止程序的运行。 如果'code'为'true',则返回'EXIT_SUCCESS';如果为'false',则返回'EXIT_FAILURE'; 如果为一个数值,则返回该数值。默认为'true'。 如果'close'为'true',则在终止之前关闭'Lua state'。]] --[[ os.getenv(varname) 获取系统环境变量'varname'的值,如果该变量不存在,则返回'nil'。]] print(os.getenv('HOME')) --> /home/vermilliontear print(os.getenv('MYVAR')) --> nil > export MYVAR=9' -- 在shell中执行。 print(os.getenv('MYVAR')) --> 9 附加:

1、实际上%x,%X以及%c的最终显示格式依赖于操作系统。例如在某些系统上%x以”MM/DD/YY”的形式显示,而在另一些系统上是以”YY/MM/DD”的形式显示。
如果想明确的使用某种格式,最好指定明确的”format”,例如%m/%d/%Y。

本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供学习参考!
本文地址为 https://v30.fanwenzhu.com/jiaob/qita/9369.shtml

相关文章

风云图片

推荐阅读

返回其他语言频道首页